iT邦幫忙

2023 iThome 鐵人賽

DAY 5
0
自我挑戰組

30天打造自己的RSS閱讀器:Go語言與DevOps的實戰應用系列 第 5

Day 5:到 GitHub 開設 RSS 閱讀器的 Repository

  • 分享至 

  • xImage
  •  

我們前一篇文章已經在 Linux 上安裝了 Docker - 帶動容器化技術熱潮的始祖。
今天我們會先去 GitHub 開設一個新的 Repository 來儲存我們的 RSS 閱讀器專案。我們也會講到如何將Docker image存放在GitHub Packages上。

建立 GitHub Repository

創建一個新的GitHub Repository是一個相對簡單的過程。以下是步驟:

  1. 登入您的GitHub帳戶。
  2. 點擊左上角的 New 按鈕。
    https://ithelp.ithome.com.tw/upload/images/20230908/20162813GJWNu7DHcW.png
  3. 輸入Repository的名稱,例如 too-simple-rss-reader
  4. 選擇是否要讓 Repository 為公開(Public)或私有(Private),若設為私有的話,雖然其他人看不到你的 code,但很多功能都會變成要收費。我這裡選擇 public,蹭一波 GitHub Actions 還有 GitHub Packages。
  5. 可選擇初始化README、.gitignore或選擇特定的授權,我先不選。
  6. 點擊 Create repository

GitHub Packages 簡介

GitHub Packages 是一個套件存放的服務,可以往裡面上傳多種類型的套件,其中就包括 Container 映像檔。這算是 GitHub 作為一站式開發平台的加分項目。

GitHub Container Registry (ghcr.io)

GitHub Container Registry 是 GitHub Packages 的一部分,專門用於存放容器映像(Docker images)。它提供了更多高級功能,例如:

  • 更好的權限控制:您可以更細緻地控制誰可以讀取或寫入 Docker image
  • 匿名拉取:能夠設定允許匿名用戶 pull image
  • 免費存放:對於公開的 image,ghcr.io 完全免費的

GitLab 也有類似的服務 (GitHub Container Registry),果然是倆好兄弟

如何推送到 GitHub Container Registry

  1. 先登入 ghcr.io:

    echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin

  2. 標籤(Tag)image:
    docker tag local-image:tag ghcr.io/owner/repository:tag

  3. 推送(Push)image:
    docker push ghcr.io/owner/repository:tag

這跟 push 到 DockerHub 大同小異,以上的步驟在之後設定 GitHub Actions 時還會再看到一次。

既然都提到 GitHub Actions,明天來提一下 GitHub Actions 是用甚麼架構來執行 pipeline 的 (前天的文章只提到 GitHub Actions 配置文件的組成而已)


上一篇
Day 4: 在 Linux 上安裝 Docker
下一篇
Day 6:runner 在 GitHub Actions 的作用與執行任務的方式
系列文
30天打造自己的RSS閱讀器:Go語言與DevOps的實戰應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言